package cn.wolfcode.service;

import cn.wolfcode.domain.Permission;
import cn.wolfcode.qo.QueryObject;
import com.github.pagehelper.PageInfo;

import java.util.List;

/**
 * 部门Service接口
 */
public interface IPermissionService {
    /**
     * 部门新增
     *
     * @param permission
     */
    void save(Permission permission);

    /**
     * 部门删除
     *
     * @param id
     */
    void delete(Long id);

    /**
     * 部门新增
     *
     * @param permission
     */
    void update(Permission permission);

    /**
     * 根据ID查部门
     *
     * @param id 传入部门的ID
     * @return 根据ID 查询部门对象
     */
    Permission get(Long id);

    /**
     * 查询所有
     *
     * @return
     */
    List<Permission> listAll();

    PageInfo<Permission> query(QueryObject qo);

    /**
     * 权限加载
     */
    void reload();

    List<String> selEmployeePermissionById(Long id);
}